A computer network is a collection of interconnected computing devices that exchange data and share resources. In a packet-based network, such as the Internet, the computing devices communicate data by dividing the data into small blocks called packets. The packets are individually routed across the network from a source device to a destination device. The destination device extracts the data from the packets and assembles the data into its original form. Dividing the data into packets enables the source device to resend only those individual packets that may be lost during transmission.
To route the packets through the computer network, each network device may be assigned an address that uniquely identifies each of the requesting network devices. Each packet may then include a source address uniquely identifying the network device that originated the packet and a destination address uniquely identifying the network device to which the packet is destined. Intermediate devices, referred to as routers, may route the packets to the destination device based on the destination address included within the packet.
Before attempting to access the network, each network device may request configuration information that includes an Internet Protocol (IP) address in accordance with a Dynamic Host Configuration Protocol (DHCP). For example, a subscriber device (e.g., a cable modem, a digital television setup box, a Digital Subscriber Line (DSL) modem) may request a layer three IP network address by issuing a DHCP request. The DHCP request issued by the subscriber device may specify a hardware address, e.g. MAC address, of a network interface of the requesting network device. This hardware address is typically configured within a network interface card at the time of manufacture and is commonly used within the computer network to uniquely identify the requesting device. A DHCP server or other system that maintains an IP address space for the network may receive this request, reserve an IP address with the IP address space and assign the IP address to the requesting network device. The DHCP server then formulates a response in the form of layer two (L2) message and forwards the response back to the network device so as to assign the reserved IP address to the requesting network device. To forward this response back to the network device, the DHCP server formulates the L2 message with the hardware address specified in the DHCP request as the destination address.